/**
 * 封装本地存储操作模块
 */

// 存储数据
export const setItem = (key, value) => {
  //如果是数组、对象类型的数据转换为 JSON(键和值都是双引号括起来)格式字符串进行存储
  //是普通字符串就不会进入if直接存进去
  if (typeof value === "object") {
    value = JSON.stringify(value);
  }
  window.localStorage.setItem(key, value);
};

// 获取数据
export const getItem = key => {
  // 先把对应数据取出来
  const data = window.localStorage.getItem(key)
  // 由于不太好判断json格式
  // 如果是json的话JSON.parse(data)就会正常执行不会抛错；如果不是json就直接抛错进入catch
  try {
    // data数据是从localStorage里面取出来的，取出来的是一个字符串
    // 但是这个字符串可能是一个json格式的字符串，也可能是一个普通字符串
    return JSON.parse(data)
  } catch (error) {
    return data
    
  }
}
